package com.tencreat.domain.pt.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.tencreat.common.enums.UserType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.checkerframework.checker.units.qual.C;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

@Data
@ApiModel("奖金池")
public class ResBonusPoolAppVO {
    @ApiModelProperty("奖金池开放时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime poolOpenTime;

    @ApiModelProperty("已发放金额")
    @C
    private BigDecimal issuedAmount;

    @ApiModelProperty("福利池总金额")
    private BigDecimal prizeTotal;

    @ApiModelProperty("用户奖金信息")
    private List<UserBonusInfo> userBonusInfoList;

    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public static class UserBonusInfo{
        @ApiModelProperty("名次")
        private Integer ranking;

        @ApiModelProperty("用户uuid")
        private Long uuid;

        @ApiModelProperty("手机号")
        private String mobile;

        @ApiModelProperty("直推业绩")
        private BigDecimal directAchieve;

        @ApiModelProperty("预计收益")
        private BigDecimal expectedEarnings;

        private Long recommended;

        private UserType userLevel;

        private UserType headType;
    }
}
